package com.yunxi.otd.service;

import com.github.pagehelper.PageInfo;
import com.yunxi.core.web.ApiResult;
import com.yunxi.otd.pojo.OtdCapacityChangeStateVO;
import com.yunxi.otd.pojo.OtdCapacityEditVO;
import com.yunxi.otd.pojo.OtdCapacityQueryVO;
import com.yunxi.otd.pojo.OtdCapacityRemoveVO;
import java.util.List;

/**
 * <p>
 * 产能设置 服务类
 * </p>
 *
 * @author XUQI
 * @since 2019-08-26
 */
public interface OtdProduceCapacityDubboService {

    /**
     * 分页查询
     *
     * @param queryVO 查询条件
     * @param pageNum 页数
     * @param pageSize 行数
     * @return PageInfo
     */
    PageInfo pageByVo(OtdCapacityQueryVO queryVO, Integer pageNum, Integer pageSize);

    /**
     * 产能设置查询
     *
     * @param queryVO 查询条件
     * @return ApiResult
     */
    ApiResult findProduceCapacity(OtdCapacityQueryVO queryVO);


    /**
     * 产能数编辑
     *
     * @param editVO 编辑VO
     * @return ApiResult
     */
    ApiResult editCapacity(OtdCapacityEditVO editVO);

    /**
     * 变更状态
     *
     * @param editVO 编辑VO
     * @return ApiResult
     */
    ApiResult changeState(OtdCapacityChangeStateVO editVO);

    /**
     * 保存
     *
     * @param editVO 编辑对象
     * @return ApiResult
     */
    ApiResult saveOrUpdate(OtdCapacityEditVO editVO);

    /**
     * 单条查询
     *
     * @param id id
     * @return ApiResult
     */
    ApiResult load(String id);

    /**
     * 多条删除
     *
     * @param removeVOList 删除List
     * @return ApiResult
     */
    ApiResult removeByVO(List<OtdCapacityRemoveVO> removeVOList);

    /**
     * 分页查询
     *
     * @param queryVO 查询条件
     * @return ApiResult
     */
    ApiResult export(OtdCapacityQueryVO queryVO);

}
